home *** CD-ROM | disk | FTP | other *** search
/ The 640 MEG Shareware Studio 2 / The 640 Meg Shareware Studio CD-ROM Volume II (Data Express)(1993).ISO / clang / ctask.zip / CHANGES.DOC next >
Text File  |  1988-07-01  |  6KB  |  195 lines

  1.       List of Changes for CTask 0.1 to 1.1
  2.       ====================================
  3.  
  4. The main changes are
  5.  
  6.    - Support for named control blocks
  7.    - Support for dynamic allocation of control blocks and
  8.      buffers
  9.    - Task state display support (snapshot dump)
  10.    - More flexible timer handling, interrupt disable times
  11.      reduced
  12.    - SIO support extended for shared IRQ's and on-line
  13.      definition of ports; save and restore of control
  14.      registers
  15.    - Bug fixes for known bugs
  16.  
  17.  
  18. TSKCONF.H
  19.  
  20. This is a new file, containing configuration options. See the
  21. reference manual for an explanation of the #defines.
  22.  
  23.  
  24. TSK.H
  25.  
  26. Using dynamic allocation and named structures requires
  27. additional optional fields in most control structures.
  28.  
  29. The timer queue structure has been changed completely, it is
  30. now called tlink instead of the previous dlink to avoid
  31. confusion. 
  32.  
  33. Additional #defines were necessary to support name and timer
  34. control blocks.
  35.  
  36. The tsk_inp, tsk_outp, tsk_dis_int, and tsk_ena_int functions
  37. are now defined as intrinsics.
  38.  
  39.  
  40. TSKMAIN.C
  41.  
  42. The main change is the handling of the timeout queue, which
  43. is now singly linked, and may contain other elements than
  44. task control blocks. This had consequences for the kill
  45. functions, and required two new functions to create and
  46. change timeout control blocks.
  47.  
  48. The chaining to the system tick interrupt has been separated
  49. from the processing of the timeout queue.
  50.  
  51. Minor changes were necessary to accommodate named and dynamic
  52. structures.
  53.  
  54.  
  55. TSKSUB.C
  56.  
  57. The rewrite of the timer handling required changes to the
  58. timeout-functions. 
  59.  
  60. New routines are included for managing named structures.
  61.  
  62.  
  63. TSKSIO.C
  64.  
  65. Support for shared IRQ lines and for dynamic definition of
  66. ports was added. Ports are checked (with a simple check,
  67. might be fooled) for existence so the installation doesn't
  68. hang.
  69.  
  70. The complete status of the port is now saved before
  71. initialising, and optionally restored on removal of the
  72. driver. This should avoid problems in interaction with exotic
  73. hardware or resident drivers. A parameter has been added to
  74. v24_remove to allow specification of control register
  75. restoration.
  76.  
  77. You can now specify that the values of the modem control,
  78. line control, and baud rate registers should not be tampered
  79. with on initialisation (in 0.1 they were always initialised
  80. to #defined values) with an additional parameter to
  81. v24_install.
  82.  
  83. If the port number for v24_install is ORed with 0x80, the
  84. port is *relative*. This means that the entry in the BIOS
  85. table for COM-Ports is used to search the tables internal to
  86. the driver for the port information, instead of using the
  87. table entry directly. If the port address cannot be found,
  88. the driver returns with an error code. Note that ports are
  89. numbered from 0, so to specify COM1, pass 0x80 as parameter.
  90.  
  91. The return value for successful installation is now a pointer
  92. to the sio control block. This pointer has to be passed to
  93. all other functions instead of the port number. This change
  94. was necessitated by the addition of dynamically defined
  95. ports.
  96.  
  97. Since I/O routines are now implemented as intrinsics, the
  98. insertion of tsk_nop()-calls between successive inp/outp
  99. calls was necessary to provide the I/O-settle delay for AT's.
  100.  
  101. Minor changes were necessary to accommodate named and dynamic
  102. structures.
  103.  
  104.  
  105. TSKPRT.C
  106.  
  107. If the port number for prt_install is ORed with 0x80, the
  108. port is *relative*. This means that the entry in the BIOS
  109. table for LPT-Ports is used to search the tables internal to
  110. the driver for the port information, instead of using the
  111. table entry directly. If the port address cannot be found,
  112. the driver returns with an error code. Note that ports are
  113. numbered from 0, so to specify LPT1, pass 0x80 as parameter.
  114.  
  115. The return value for successful installation is now the
  116. internal port number, since relative port numbers have to be
  117. translated on installation.
  118.  
  119. Minor changes were necessary to accommodate named and dynamic
  120. structures.
  121.  
  122.  
  123. TSKFLG.C
  124. TSKCNT.C
  125. TSKPIP.C
  126. TSKMSG.C
  127.  
  128. Minor changes were necessary to accommodate named and dynamic
  129. structures.
  130.  
  131.  
  132. TSKBUF.C
  133.  
  134. The return values and the bug that caused the message counter
  135. to be decreased on write and increased on read were corrected.
  136.  
  137. Minor changes were necessary to accommodate named and dynamic
  138. structures.
  139.  
  140.  
  141. TSKALLOC.C
  142.  
  143. This file is new. It is needed if dynamic structures are used
  144. (option TSK_DYNAMIC is enabled) to provide the interface to
  145. the C-allocation functions. Note that this file is model
  146. dependent, and is not included in the pre-compiled libraries.
  147.  
  148.  
  149. TSKSNAP.C
  150.  
  151. This file is new. It provides a function to write a snapshot
  152. display of the CTask system status to a file handle. Note
  153. that this file is model dependent, and is not included in the
  154. pre-compiled libraries. It can only be used if the option
  155. TSK_NAMED is enabled.
  156.  
  157.  
  158. TSK.MAC
  159.  
  160. Some changes were necessary to accommodate named and dynamic
  161. structures and the changed structure of the timer queue
  162. link.
  163.  
  164.  
  165. TSKASM.ASM
  166.  
  167. Removal of the idle task required changes in the scheduler.
  168. Since parts of the scheduler now run with interrupts enabled,
  169. a re-entry flag was introduced to avoid multiple entries into
  170. the scheduler.
  171.  
  172. The local routines for variable priorites and enqueue are now
  173. macros. Some superfluous statements were eliminated.
  174.  
  175.  
  176. TSKTIM.ASM
  177.  
  178. The separation of timer chain and timeout task required
  179. introduction of an additional counter. The logic has been
  180. cleaned up, and some comments were added.
  181.  
  182. Minor changes were necessary to accommodate named structures.
  183.  
  184.  
  185. TSKDOS.ASM
  186.  
  187. Minor changes were necessary to accommodate named structures.
  188.  
  189.  
  190. TSKBIOS.ASM
  191.  
  192. This is a new module that handles the AT BIOS wait/post
  193. calls.
  194.  
  195.